(define test-list1 (list 0 1 2 3 4 5))
(define test-list2 (list 6 7 8 9 10))

(define (list-ref item n) 
  (if (= n 0)
      (car item)
      (list-ref (cdr item) (- n 1))))

(define (list-length item)
  (if (null? item)
      0
      (+ 1 (list-length (cdr item)))))

(define (list-length-iterversion item)
  (define (list-length-iter item count)
    (if (null? item)
       count
       (list-length-iter (cdr item) (+ 1 count))))
  (list-length-iter item 0))

(define (list-append list1 list2)
  (if (null? list1)
      list2
      (cons (car list1) (list-append (cdr list1) list2))))

(define (scale-list item factor)
  (map (lambda (x) (* x factor)) item))
